	

#ifndef MOD_CROP_H
#define	MOD_CROP_H
using namespace std;

class Mod_Crop:public Mod_out_handling
{
    protected:      
  
    
    
    public:
    virtual int compute (time_intervall &ti);    
    Mod_Crop(Mod_in *iinp);
    ~Mod_Crop();
};

class Mod_Crop_epi:	public Mod_Crop
{
	protected:
            vector <*Crop_epi> vect_crop;
	public:
            map <string,int> IO_options;
            Mod_ETP *mod_etp;
            Mod_wc *mod_wc;
            Mod_Soiltemp *mod_soiltemp;
            Mod_NO3 *mod_no3;
            Mod_NH4 *mod_nh4;
            Inp_croprot *inp_croprot;
            
	   Mod_Crop_epi(map <string,int> &iIO_options,
                         Mod_in *iinp,
                         Mod_ETP *imod_etp,
                         Mod_wc *imod_wc,
                         Mod_Soiltemp *mod_soiltemp,
                         Mod_NO3 *imod_no3,
                         Mod_NH4 *imod_nh4,
                         Inp_croprot *iinp_croprot
                         );
       int compute(time_intervall &ti);
   
			
};

class Crop_epi
{
protected:
public:
    int number_of_crop_in_inp_croprot; //(0...)
    int flag_seeding;
    int flag_harvest;
    double actual_time_within_intervall;
    Crop_epi();
    ~Crop_epi();
    
    
};
#endif